It is common to store large volumes of data on storage systems, which store the data on non-volatile mass storage devices, such as magnetic or optical disks. These storage systems sometimes handle valuable or irreplaceable data. For example, airline reservations, bank account management, electronic find transfers, shipping and receiving, inventory control, and the like. Consequently, there is a need to ensure that the valuable data contained in these storage systems is adequately protected against loss or damage.
Occasionally, however, a mass storage device will fail, resulting in the loss of stored data. Consequently, it is a common practice to store a back-up copy of data that is considered valuable on a separate, back-up storage device. For practical reasons, however, it is often necessary to locate the back up storage device in the same geographic vicinity as the primary storage device. As a result, both the primary data and the back-up copy may be lost or destroyed due to theft, vandalism, or natural disasters, such as fires, floods and earthquakes. Hence, there is a need for the capability to store multiple back-up copies of data in geographically separate locations, while still permitting quick and easy access by the host processing system to any back-up copy.
Therefore it is desirable to provide a storage controller, which provides parallel processing functional units, which increase data protection and provide increased control over the associations amongst devices in the computer system to reduce host transfer latency.